/**
 * Copyright (c) 2013-Now http://jeesite.com All rights reserved.
 */
package com.jeesite.modules.xcxAdmin.entity;

import java.util.Date;
import java.util.HashMap;
import java.util.Map;

import com.jeesite.common.utils.excel.annotation.ExcelField;
import com.jeesite.common.utils.excel.annotation.ExcelFields;
import com.jeesite.common.utils.excel.fieldtype.CompanyType;
import com.jeesite.common.utils.excel.fieldtype.OfficeType;
import com.jeesite.modules.sys.entity.Employee;
import org.hibernate.validator.constraints.Length;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.jeesite.common.entity.DataEntity;
import com.jeesite.common.mybatis.annotation.Column;
import com.jeesite.common.mybatis.annotation.Table;
import com.jeesite.common.mybatis.mapper.query.QueryType;

import javax.validation.Valid;

/**
 * 测试数据Entity
 * 
 * @author ThinkGem
 * @version 2018-04-22
 */
@Table(name = "zt_admin", alias = "a", columns = {
		@Column(name = "id", attrName = "id", label = "编号", isPK = true),
		@Column(name = "name", attrName = "name", label = "名称", queryType = QueryType.LIKE),
		@Column(name = "sex", attrName = "sex", label = "性别", queryType = QueryType.EQ),
		@Column(name = "username", attrName = "username", label = "用户名",queryType = QueryType.LIKE),
		@Column(name = "headimgurl", attrName = "headimgurl", label = "头像"),
		@Column(name = "openid", attrName = "openid", label = "微信openid"),
		@Column(name = "status", attrName = "status", label = "状态"),
		@Column(name = "first_date", attrName = "firstDate", label = "第一次登录时间", isUpdate = true),
		@Column(name = "company", attrName = "company", label = "状态"),
		@Column(name = "skvalue", attrName = "skvalue", label = "掌柜值"),
		@Column(name = "yaoqing_date", attrName = "yaoqingDate", label = "邀请时间"),
		@Column(name = "end_date", attrName = "endDate", label = "最后一次登录时间"),
		@Column(name = "create_date", attrName = "createDate", label = "创建时间"),
		@Column(name = "phone", attrName = "phone", label = "手机号码"),
		
		@Column(name = "level", attrName = "level", label = "代理等级"),
		@Column(name = "memtype", attrName = "memtype", label = "会员类型"),
		
		@Column(name = "paycode", attrName = "paycode", label = "收款二维码"),
		
		@Column(name = "wximg", attrName = "wximg", label = "微信二维码"),
		
		@Column(name = "lastadmin", attrName = "lastadmin", label = "我的邀请人"),
		@Column(name = "new_user", attrName = "newUser", label = "新人标记"),
		
		@Column(name = "amount", attrName = "amount", label = "金额"),
		@Column(name = "cash_amount", attrName = "cashAmount", label = "可提现金额"),
		@Column(name = "bid", attrName = "bid", label = "编号UID")
		 }, orderBy = "a.end_date DESC")
public class ZtAdmin extends DataEntity<ZtAdmin> {

	private static final long serialVersionUID = 1L;

	private String name;

	private String sex;
	private String username;
	private String headimgurl;
	private String openid;
	private String status;
	private Date firstDate;
	private Date yaoqingDate;//邀请时间
	private Integer fansCount;//粉丝数量
	private Date endDate;
	private Boolean newUser;
	private String oleMemType;
	
	private Integer skvalue;//掌柜值
	
	private String paycode;//收款二维码
	private String wximg="";//微信二维码

	private String phone;
	private String level;  //  0普通   1铜   2银  3金
	
	private String lastadmin;   //上级   
	
	private Integer pageNum;
	
	private Integer wacount;//提现次数
	
	private String isTj;//0是没有掌柜推荐    1是有掌柜推荐
	
	
	private Integer yesterdayfansCount;//昨日新增粉丝数量
	private Integer todayfansCount;//今日新增粉丝数量
	private Double totalComm;//累计总佣金
	private Double todayComm;//今日佣金


	public Boolean getNewUser() {
		return newUser;
	}

	public void setNewUser(Boolean newUser) {
		this.newUser = newUser;
	}

	public String getIsTj() {
		return isTj;
	}

	public void setIsTj(String isTj) {
		this.isTj = isTj;
	}

	public String getOleMemType() {
		return oleMemType;
	}

	public void setOleMemType(String oleMemType) {
		this.oleMemType = oleMemType;
	}

	public Integer getWacount() {
		return wacount;
	}

	public void setWacount(Integer wacount) {
		this.wacount = wacount;
	}

	public Integer getSkvalue() {
		return skvalue;
	}

	public void setSkvalue(Integer skvalue) {
		this.skvalue = skvalue;
	}

	public Integer getYesterdayfansCount() {
		return yesterdayfansCount;
	}

	public void setYesterdayfansCount(Integer yesterdayfansCount) {
		this.yesterdayfansCount = yesterdayfansCount;
	}

	public Integer getTodayfansCount() {
		return todayfansCount;
	}

	public void setTodayfansCount(Integer todayfansCount) {
		this.todayfansCount = todayfansCount;
	}

	public Double getTotalComm() {
		return totalComm;
	}

	public void setTotalComm(Double totalComm) {
		this.totalComm = totalComm;
	}

	public Double getTodayComm() {
		return todayComm;
	}

	public void setTodayComm(Double todayComm) {
		this.todayComm = todayComm;
	}
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getYaoqingDate() {
		return yaoqingDate;
	}

	public void setYaoqingDate(Date yaoqingDate) {
		this.yaoqingDate = yaoqingDate;
	}

	public String getWximg() {
		return wximg;
	}

	public void setWximg(String wximg) {
		this.wximg = wximg;
	}

	public String getPaycode() {
		return paycode;
	}

	public void setPaycode(String paycode) {
		this.paycode = paycode;
	}

	public Integer getPageNum() {
		return pageNum;
	}

	public void setPageNum(Integer pageNum) {
		this.pageNum = pageNum;
	}

	private Map lastAdminInfo=new HashMap();
	
	
	private Double amount;//余额

	private Double cashAmount;//可提现金额
	private String bid="";//编号

	private String memtype="";//会员类型               0普通用户        1会员

	private String company;//公司编号
	private String companyName;//公司名称

	@ExcelField(title="公司编号", attrName="company", align= ExcelField.Align.CENTER, sort=30)
	public String getCompany() {
		return company;
	}

	public void setCompany(String company) {
		this.company = company;
	}

	public Integer getFansCount() {
		return fansCount;
	}

	public void setFansCount(Integer fansCount) {
		this.fansCount = fansCount;
	}

	public Map getLastAdminInfo() {
		return lastAdminInfo;
	}

	public void setLastAdminInfo(Map lastAdminInfo) {
		this.lastAdminInfo = lastAdminInfo;
	}
	@ExcelField(title="会员类型", attrName="memtype", align= ExcelField.Align.LEFT, sort=50)
	public String getMemtype() {
		return memtype;
	}

	public void setMemtype(String memtype) {
		this.memtype = memtype;
	}

	public Double getAmount() {
		return amount;
	}

	public void setAmount(Double amount) {
		this.amount = amount;
	}
	public Double getCashAmount() {
		return cashAmount;
	}

	public void setCashAmount(Double cashAmount) {
		this.cashAmount = cashAmount;
	}

	public String getBid() {
		return bid;
	}

	public void setBid(String bid) {
		this.bid = bid;
	}

	public String getLastadmin() {
		return lastadmin;
	}

	public void setLastadmin(String lastadmin) {
		this.lastadmin = lastadmin;
	}
	@ExcelField(title="手机号码", attrName="phone", align= ExcelField.Align.CENTER, sort=40)
	public String getPhone() {
		return phone;
	}

	public void setPhone(String phone) {
		this.phone = phone;
	}

	public String getLevel() {
		return level;
	}

	public void setLevel(String level) {
		this.level = level;
	}

	@JsonIgnore
	private Date createDate;
	@JsonIgnore
	private String updateBy;
	@JsonIgnore
	private String createBy;
	@JsonIgnore
	private Date updateDate;
	
	
    

	

	public ZtAdmin() {
		this(null);
	}

	public ZtAdmin(String id) {
		super(id);
	}


	@Length(min = 0, max = 200, message = "姓名不能超过 30 个字符")
	@ExcelField(title="用户昵称", attrName="name", align= ExcelField.Align.CENTER, sort=10)
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
	@ExcelField(title="性别", attrName="sex", align = ExcelField.Align.CENTER, sort=20)
	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public String getUsername() {
		return username;
	}

	@Length(min = 0, max = 200, message = "用户名不能超过 30 个字符")
	public void setUsername(String username) {
		this.username = username;
	}

	public String getHeadimgurl() {
		return headimgurl;
	}

	public void setHeadimgurl(String headimgurl) {
		this.headimgurl = headimgurl;
	}

	public String getOpenid() {
		return openid;
	}

	public void setOpenid(String openid) {
		this.openid = openid;
	}
	@JsonIgnore
	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getFirstDate() {
		return firstDate;
	}

	public void setFirstDate(Date firstDate) {
		this.firstDate = firstDate;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getEndDate() {
		return endDate;
	}

	public void setEndDate(Date endDate) {
		this.endDate = endDate;
	}

	public String getCompanyName() {
		return companyName;
	}

	public void setCompanyName(String companyName) {
		this.companyName = companyName;
	}
}